#ifndef __CPOTIMER_H__
#define __CPOTIMER_H__

#include "timer/timer.h"
#include <sys/time.h>

#define TMR_SYSIDLE_STOP        "TMR_SYSIDLE_STOP"
#define TMO_SYSIDLE_STOP        (2)                     //10min

#define TMR_SYSPOINTS_ONWAIT    "TMR_SYSPOINTS_ONWAIT"  // 等待系统点位开状态返回
#define TMO_SYSPOINTS_ONWAIT    (2)                     // 1min

#define TMR_WP_ONWAIT           "TMR_WP_ONWAIT"         // 等待水泵开状态返回
#define TMO_WP_ONWAIT           (2)                     // 1min

#define TMR_CH_ONWAIT           "TMR_CH_ONWAIT"         // 等待水泵开状态返回
#define TMO_CH_ONWAIT           (2)                     // 1min

#define TMR_CH_OFFWAIT      "TMR_CH_OFFWAIT"    
#define TMO_CH_OFFWAIT      (2)                         // 冷机关机后, 多长时间才可以关闭水泵 10*60--10min

#define TMR_CH_OFFWAIT      "TMR_CH_OFFWAIT"    
#define TMO_CH_OFFWAIT      (2)                         // 关闭冷机关机后, 关闭水泵前的等待时间 10*60--10min

#define TMR_CH_BF_CLOSE     "TMR_CH_BF_CLOSE"

#define TMR_WP_OFFWAIT     "TMR_WP_OFFWAIT"
#define TMO_WP_OFFWAIT      (2)                         // 关闭水泵后, 关闭水阀前的等待时间

#define T_WP_RT_BF_CH       (2)                         // 开启冷机前, 水泵的最小运行时间 10*60--10min

#define T_CH_RT_BF_CLOSE    (2)                         // 关闭冷机前, 冷机的最小运行时间 10*60--10min

#define T_ADD_CH_MIN        (10)                         // 满足加机条件的最小持续时间 30*60--30min
#define T_SUB_CH_MIN        (10)                         // 满足减机条件的最小持续时间 30*60--30min

#define TMR_DELDEVICE       "TMR_DELDEIVCE"
#define TMO_DELDEVICE       (2)                          // 收到cmd: delDevice指令后，等待系统关停时间

void cpo_to_sysp_onwait(void *arg);
void cpo_to_sysidle_stop(void *arg);
void cpo_to_wp_onwait(void *arg);
void cpo_to_ch_onwait(void *arg);
void cpo_to_ch_offwait(void *arg);
void cpo_ch_bf_close(void *arg);
void cpo_to_wp_offwait(void *arg);
void cpo_to_del_device(void *arg);
void *cpo_deltmr_after_stop_thread(void *arg);

#endif // __CPOTIMER_H__